home *** CD-ROM | disk | FTP | other *** search
- :
- # Guess values for system-dependant variables and create `Makefile'.
- # Copyright (C) 1991 Free Software Foundation, Inc.
-
- # This program is free software; you can redistribute it and/or modify
- # it under the terms of the GNU General Public License as published by
- # the Free Software Foundation; either version 2, or (at your option)
- # any later version.
-
- # This program is distributed in the hope that it will be useful,
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- # GNU General Public License for more details.
-
- # You should have received a copy of the GNU General Public License
- # along with this program; if not, write to the Free Software
- # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
- # Usage: configure [+srcdir=DIR] [+host=HOST] [+gas] [+nfp] [TARGET]
- # All args except +srcdir=DIR are ignored.
-
- trap 'rm -f conftest conftest.c; exit 1' 1 3 15
-
- set +u # Make sure unset variables are ok.
-
- # Make sure we don't find the System V /etc/install.
- PATH=`echo $PATH|sed 's,^:,|,
- s,:$,|,
- s,:/usr/etc,,g
- s,/usr/etc:,,g
- s,:/etc,,g
- s,/etc:,,g
- s,|,:,g'`
-
- # A filename unique to this package, relative to the directory that
- # configure is in, which we can look for to find out if srcdir is correct.
- unique_file=find/pred.c
-
- for arg in $*; do
- # Handle +srcdir with a space before the argument.
- if [ x$next_srcdir = xyes ]; then srcdir=$arg; next_srcdir=
- # Handle +host with a space before the argument.
- elif [ x$next_host = xyes ]; then next_host=
- else
- case $arg in
- -srcdir=* | +srcdir=* | +srcdi=* | +srcd=* | +src=* | +sr=* | +s=*)
- srcdir=`echo $arg | sed 's/[+-]s[a-z]*=//'` ;;
- -srcdir | +srcdir | +srcdi | +srcd | +src | +sr | +s)
- next_srcdir=yes ;;
- -host=* | +host=* | +hos=* | +ho=* | +h=*) ;;
- -host | +host | +hos | +ho | +h)
- next_host=yes ;;
- -gas | +gas | +ga | +g) ;;
- -nfp | +nfp | +nf | +n) ;;
- *) ;;
- esac
- fi
- done
-
- vpsub='s@\$\([-./a-zA-Z0-9]*\)<@\1@g'
- # Find the source files, if location was not specified.
- if [ x$srcdir = x ]; then
- srcdirdefaulted=yes; srcdir=.
- if [ ! -r $unique_file ]; then srcdir=`pwd`/..; fi
- fi
- if [ $srcdir != . ]; then
- VPATH='VPATH = $(srcdir)'
- vpsub='s@\$\([-./a-zA-Z0-9]*\)<@\$<@g'
- fi
-
- if [ ! -r $srcdir/$unique_file ]; then
- if [ x$srcdirdefaulted = xyes ]; then
- echo "$0: Can not find sources in \`.' or \`..'." 1>&2
- else
- echo "$0: Can not find sources in \`${srcdir}'." 1>&2
- fi
- exit 1
- fi
-
- if test "$RANDOM" = "$RANDOM"; then
- # Plain old Bourne shell.
- echo checking for gcc
- test -z "$CC" -a -n "`gcc 2>&1`" && CC="gcc -O"
-
- echo checking for install
- if test -z "$INSTALL" -a -n "`install 2>&1`"; then
- INSTALL="install -c"
- INSTALLDATA="install -c -m644"
- fi
-
- echo checking for ranlib
- test -z "$RANLIB" -a -n "`ranlib conftest 2>&1`" && RANLIB=ranlib
- rm -f conftest
- else
- # ksh, bash or zsh. ksh and zsh write "command not found" to stderr.
- echo checking for gcc
- test -z "$CC" && type gcc && CC="gcc -O"
-
- echo checking for install
- if test -z "$INSTALL" && type install; then
- INSTALL="install -c"
- INSTALLDATA="install -c -m644"
- fi
-
- echo checking for ranlib
- test -z "$RANLIB" && type ranlib && RANLIB=ranlib
- fi
-
- CC=${CC-cc}
- INSTALL=${INSTALL-cp}
- INSTALLDATA=${INSTALLDATA-cp}
- RANLIB=${RANLIB-echo}
- INCLUDEDIR=${INCLUDEDIR-/usr/include}
-
- rm -f conftest conftest.c
- compile="$CC $DEFS conftest.c -o conftest $LIBS >/dev/null 2>&1"
-
- # Check for various header files.
-
- echo checking for limits.h
- test -f $INCLUDEDIR/limits.h || DEFS="$DEFS -DLIMITS_MISSING"
-
- echo checking for sys/mkdev.h
- if test -f $INCLUDEDIR/sys/mkdev.h; then
- DEFS="$DEFS -DMAJOR_IN_MKDEV"
- fi
-
- echo checking for directory library header
- if test -f $INCLUDEDIR/dirent.h; then
- DEFS="$DEFS -DDIRENT"
- elif test -f $INCLUDEDIR/sys/ndir.h; then
- DEFS="$DEFS -DSYSNDIR"
- elif grep 'void.*closedir' $INCLUDEDIR/sys/dir.h >/dev/null 2>&1; then
- DEFS="$DEFS -DVOID_CLOSEDIR"
- fi
-
- echo checking for st_blocks in struct stat
- echo "#include <sys/types.h>
- #include <sys/stat.h>
- main() { struct stat s; exit(0); s.st_blocks; }" > conftest.c
- eval $compile
- if test -s conftest && ./conftest 2>/dev/null; then :
- else
- DEFS="$DEFS -DST_BLOCKS_MISSING"
- LIBOBJS="$LIBOBJS fileblocks.o"
- fi
- rm -f conftest conftest.c
-
- echo checking how to get filesystem type
- if test -f $INCLUDEDIR/sys/statvfs.h -a -f $INCLUDEDIR/sys/fstyp.h; then
- DEFS="$DEFS -DFS_STATVFS"
- elif test -f $INCLUDEDIR/sys/statfs.h -a -f $INCLUDEDIR/sys/fstyp.h; then
- DEFS="$DEFS -DFS_USG_STATFS"
- elif test -f $INCLUDEDIR/sys/statfs.h -a -f $INCLUDEDIR/sys/vmount.h; then
- DEFS="$DEFS -DFS_AIX_STATFS"
- elif test -f $INCLUDEDIR/mntent.h; then
- DEFS="$DEFS -DFS_MNTENT"
- elif test -f $INCLUDEDIR/sys/mount.h -a -f $INCLUDEDIR/sys/fs_types.h; then
- DEFS="$DEFS -DFS_GETMNT"
- elif grep MOUNT_UFS $INCLUDEDIR/sys/mount.h >/dev/null 2>&1; then
- DEFS="$DEFS -DFS_STATFS"
- fi
-
- echo checking for ANSI C header files
- echo "#include <stdlib.h>
- #include <string.h>
- main() { exit(0); strerror(0); }" > conftest.c
- eval $compile
- if test -s conftest && ./conftest 2>/dev/null; then
- DEFS="$DEFS -DSTDC_HEADERS"
- fi
- rm -f conftest conftest.c
-
- echo checking for POSIX.1 header files
- echo "#include <unistd.h>
- main() {
- #ifdef _POSIX_VERSION
- exit(0);
- #else
- exit(1);
- #endif
- }" > conftest.c
- eval $compile
- if test -s conftest && ./conftest 2>/dev/null; then
- DEFS="$DEFS -DPOSIX"
- fi
- rm -f conftest conftest.c
-
- echo checking for BSD string and memory functions
- echo "#include <strings.h>
- main() { exit(0); rindex(0, 0); bzero(0, 0); }" > conftest.c
- eval $compile
- if test -s conftest && ./conftest 2>/dev/null; then :
- else DEFS="$DEFS -DUSG"
- fi
- rm -f conftest conftest.c
-
- # Check whether various functions exist.
-
- # Functions we provide replacements for.
- for func in fnmatch memset stpcpy strdup strftime strspn strstr strtol
- do
- echo checking for $func
- echo "main() { exit(0); ${func}(); }" > conftest.c
- eval $compile
- if test -s conftest && ./conftest 2>/dev/null; then :
- else LIBOBJS="$LIBOBJS ${func}.o"
- fi
- rm -f conftest conftest.c
- done
-
- case "$LIBOBJS" in
- *strftime.o*)
- echo checking whether struct tm has tm_zone
- echo '#include <sys/types.h>' > conftest.c
- case "$DEFS" in
- *-DTM_IN_SYS_TIME*) echo '#include <sys/time.h>' >> conftest.c ;;
- *) echo '#include <time.h>' >> conftest.c ;;
- esac
- echo 'main() { struct tm tm; exit(0); tm.tm_zone; }' >> conftest.c
- eval $compile
- if test -s conftest && ./conftest 2>/dev/null; then :
- else DEFS="$DEFS -DTM_ZONE_MISSING"
- fi
- rm -f conftest conftest.c
-
- case "$DEFS" in
- *-DTM_ZONE_MISSING*)
- echo checking for tzname
- echo '
- main() { extern char *tzname[2]; exit(tzname[0][0] == 1); }' > conftest.c
- eval $compile
- if test -s conftest && ./conftest 2>/dev/null; then :
- else DEFS="$DEFS -DTZNAME_MISSING"
- fi
- rm -f conftest conftest.c
- ;;
- esac
- ;;
- esac # strftime.o
-
- # Functions whose absence we work around.
- for func in vprintf
- do
- echo checking for $func
- echo "main() { exit(0); ${func}(); }" > conftest.c
- eval $compile
- if test -s conftest && ./conftest 2>/dev/null; then :
- else DEFS="$DEFS -D`echo $func|tr '[a-z]' '[A-Z]'`_MISSING"
- fi
- rm -f conftest conftest.c
- done
-
- case "$DEFS" in
- *VPRINTF_MISSING*)
- func=_doprnt
- echo checking for $func
- echo "main() { exit(0); ${func}(); }" > conftest.c
- eval $compile
- if test -s conftest && ./conftest 2>/dev/null; then :
- else DEFS="$DEFS -DDOPRNT_MISSING"
- fi
- rm -f conftest conftest.c
- ;;
- esac
-
- # Check other misc. things.
-
- echo checking for unsigned characters
- echo 'main() { char c = 255; exit(c < 0); }' > conftest.c
- eval $compile
- if test -s conftest && ./conftest 2>/dev/null; then
- DEFS="$DEFS -DCHAR_UNSIGNED"
- fi
- rm -f conftest conftest.c
-
- echo checking for Minix
- if test -d /usr/include/minix; then
- DEFS="$DEFS -UUSG -D_POSIX_SOURCE -D_POSIX_1_SOURCE=2 -D_MINIX"
- fi
-
- echo checking for Xenix
- if test -f /xenix; then
- LIBS="$LIBS -lx"
- case "$DEFS" in
- *SYSNDIR*) ;;
- *) LIBS="-ldir $LIBS" ;; # Make sure -ldir precedes any -lx.
- esac
- fi
-
- echo checking how to get alloca
- echo '
- #ifdef __GNUC__
- #define alloca __builtin_alloca
- #else
- #ifdef sparc
- #include <alloca.h>
- #else
- #ifdef _AIX
- #pragma alloca
- #else
- char *alloca ();
- #endif
- #endif
- #endif
- main() { char *p = (char *) alloca(1); exit(0); }' > conftest.c
- eval $compile
- if test -s conftest && ./conftest 2>/dev/null; then :
- elif test -d /usr/ucblib; then LIBS="$LIBS -L/usr/ucblib -lucb"
- else LIBS="$LIBS -lPW"
- fi
- rm -f conftest conftest.c
-
- trap 'rm -f Makefile lib/Makefile find/Makefile xargs/Makefile locate/Makefile man/Makefile config.status; exit 1' 1 3 15
-
- for dir in . lib find xargs locate man
- do
- test -d $dir || mkdir $dir
- echo '# Generated automatically from Makefile.in by configure.' > $dir/Makefile
- sed -e "
- $vpsub
- s,@srcdir@,$srcdir,
- s,@VPATH@,$VPATH,
- s,@CC@,$CC,
- s,@RANLIB@,$RANLIB,
- s,@INSTALL@,$INSTALL,
- s,@INSTALLDATA@,$INSTALLDATA,
- s,@DEFS@,$DEFS,
- s,@LIBS@,$LIBS,
- s,@LIBOBJS@,$LIBOBJS,
- " $srcdir/$dir/Makefile.in >> $dir/Makefile
- done
-
- echo "CC = $CC
- RANLIB = $RANLIB
- INSTALL = $INSTALL
- INSTALLDATA = $INSTALLDATA
- DEFS = $DEFS
- LIBS = $LIBS
- LIBOBJS = $LIBOBJS" > config.status
-